/*
 * @moduleName: 这个文件是用来配置新增(查询)条件的。
 * @Desc: 如果A程序员写个新增页面 就需要一个A配置 B程序员写的话也是同样的原理...新建个[name].querySchema.js文件
 * 这个配置文件也是可以从后台请求来的
 * @Author: djkloop
 * @Date: 2017-11-28 15:53:54
 * @Last Modified by: djkloop
 * @Last Modified time: 2017-12-21 00:43:34
 */
import React from 'react';
import {Icon} from 'antd';

module.exports = [
  {
    key: '_id', // 后台需要的值 ---> mongoDB 里面的ObjectID()这里不太适合用？
    title: 'ID', // 前端显示的字段名称
    // 这下面的几个值是用来给后台看的...前台看看就好的嘛...
    showInForm: false,
    placeholder: '后台自动填写',
    dataType: 'primary', // 这个地方我用的是mongod所以用的是MongoDB的类型 mysql -> int
    primary: true, // 主键...但是mongodb好像没有主键这一说??
    showType: 'normal', // 这里是用来显示这个字段是什么类型的...例如<input type="text" /> 默认就是text转化过来就是normal
    disabled: false, // 这个字段是否可以编辑... 默认是false
    render: (text, record) => text  //这个地方是antd提供的接口...
  },
  {
    key: 'name',
    title: '用户名',
    dataType: 'String', // mysql -> varchar
    // 这里的这个属性placeholder代表的是form表单的时候一些提示语
    placeholder: '请输入用户名',
    addonBefore:(<Icon type="user" />),
    addonAfter:'双击666',
    dateRules:{
      rules: [{type:'string',required: true, message: '请输用户名!' }]
    }
    //defaultValue: '双击666', // 这个有点类似同步渲染的编辑回显 初始的时候有默认值???
  },

  {
    key: 'height',
    title: '身高(cm)',
    placeholder: '哈哈哈',
    dataType: 'float',  // 小数等值查询
    dateRules:{
      rules: [{type:'number',required: true, message: '请输身高!' }]
    }
  },
  {
    // 文件上传和图片上传其实是很类似的
    key: 'jianli',
    title: '个人简历',
    dataType: 'varchar',
    name: 'uploadFile',
    showType: 'Uploade-file',
    accept: '.pdf',
    max:1,
    sizeLimit: 20480,
    placeholder: '请上传pdf格式, 大小不要超过20M',
    dateRules:{
      rules: [{required: true, message: '请上传文件!'}]
    }
  },
  {
    key: 'avatar',
    title: '头像', // 这个是按钮左侧的字
    dataType: 'String', 
    name: 'uploadImage',
    btnIcon: 'plus', // icon 图标 不设置的话就没有图标
    btnText: '图片上传', // 这个是按钮文字
    showType: 'Uploade-image', // 和普通的表单元素做个区分 必须要加前缀 Uploade-
    type:"image",  
    sizeLimit: 500,  // 限制图片大小, 单位kb, 如果不设置这个属性, 就使用默认配置, 见config.js中相关配置
    max: 3,  // 最多可以上传几张图片? 默认1
    // 默认值, 可以是string也可以是string array, 跟max有关
    //defaultValue: 'http://jxy.me/about/avatar.jpg',// 这个值最好不要写 会出现重置不能清除的问题 这个是antd自己的带问题暂时不解决
    width: 100,  // 图片在表格中显示时会撑满宽度, 为了美观要自己调整下
    accept: '.jpg',  // 允许上传的文件类型, 可以省略, 默认值是".jpg,.png,.gif,.jpeg"
    placeholder: '请上传jpg格式, 分辨率不要超过200x200',  // 提示语
    dateRules:{
      rules: [{required: true, message: '请上传图片!'}]
    }
  },
  {
    key: 'avatarT',
    title: '头像2Test', // 这个是按钮左侧的字
    dataType: 'String', 
    name: 'uploadImage',
    btnIcon: 'plus', // icon 图标 不设置的话就没有图标
    btnText: '图片上传', // 这个是按钮文字
    showType: 'Uploade-image', // 和普通的表单元素做个区分 必须要加前缀 Uploade-  
    sizeLimit: 500,  // 限制图片大小, 单位kb, 如果不设置这个属性, 就使用默认配置, 见config.js中相关配置
    max: 1,  // 最多可以上传几张图片? 默认1
    // 默认值, 可以是string也可以是string array, 跟max有关
    //defaultValue: 'http://jxy.me/about/avatar.jpg',// 这个值最好不要写 会出现重置不能清除的问题 这个是antd自己的带问题暂时不解决
    width: 100,  // 图片在表格中显示时会撑满宽度, 为了美观要自己调整下
    accept: '.jpg',  // 允许上传的文件类型, 可以省略, 默认值是".jpg,.png,.gif,.jpeg"
    type:"image",  
    placeholder: '请上传jpg格式, 分辨率不要超过200x200',  // 提示语
    dateRules:{
      rules: [{required: true, message: '请上传图片!'}]
    }
  },
]